// fork函数的使用示例
#include <stdio.h>
#include <unistd.h>

int gval = 10;

int main(int argc, char* argv[])
{
    pid_t pid;
    int lval = 20;
    gval++, lval += 5;

    /*
        当执行了fork函数后，相当于有了两个程序正在执行代码
        对于父进程而言，fork函数返回的是子进程的ID
        对于子进程而言，fork函数返回的是0
    */
    pid = fork();

    if (pid == 0)
        gval += 2, lval += 2;
    else
        gval -= 2, lval -= 2;
    
    if (pid == 0)
        printf("Child Proc: [%d, %d], \n", gval, lval);
    else
        printf("Parent Proc: [%d, %d], \n", gval, lval);

    return 0;
}